(function(jQuery){
    jQuery.extend({noticeAdd: function(options){
            var defaults = {
                inEffect: {opacity: 'show'}, 
                inEffectDuration: 600, 
                stayTime: 3000, 
                text: '', 
                stay: false, 
                type: 'notice'
            }
            var options, noticeWrapAll, noticeItemOuter, noticeItemInner, noticeItemClose;
            options = jQuery.extend({}, defaults, options);
            noticeWrapAll = (!jQuery('.notice-wrap').length) ? jQuery('<div></div>').addClass('notice-wrap').appendTo('body') : jQuery('.notice-wrap');
            noticeItemOuter = jQuery('<div></div>').addClass('notice-item-wrapper');
            noticeItemInner = jQuery('<div></div>').hide().addClass('notice-item ' + options.type).appendTo(noticeWrapAll).html('<p>' + options.text + '</p>').animate(options.inEffect, options.inEffectDuration).wrap(noticeItemOuter);
            noticeItemClose = jQuery('<div></div>').addClass('notice-item-close').prependTo(noticeItemInner).html('x').click(function() {
                jQuery.noticeRemove(noticeItemInner)
            });
            if (navigator.userAgent.match(/MSIE 6/i)){
                noticeWrapAll.css({top: document.documentElement.scrollTop});
            }
            if (!options.stay){
                setTimeout(function(){
                    jQuery.noticeRemove(noticeItemInner);
                }, 
                options.stayTime);
            }
        }, noticeRemove: function(obj){
            obj.animate({opacity: '0'}, 600, function(){
                obj.parent().animate({height: '0px'}, 300, function(){
                    obj.parent().remove();
                });
            });
        }});
})(jQuery);